# 现在用户还可以对geom_boxplot()的每个组成部分进行独立样式控制。
# 新增的定制化支持涵盖：
# 中位数线（median line）、箱体（box）、须线（whiskers）以及箱须连接线（staples）。

# geom_violin()分位数计算优化，现在分位数直接基于原始数据计算，
# 不再使用密度估计数据，结果更准确。
# 系统默认会算出25%、50%、75%三个分位数，但默认不显示出来。
# 如果你需要显示分位线，可以手动设置线型参数。
# 和箱线图类似，现在可以用 quantile.colour、quantile.linetype 等参数来自定义分位线的颜色、线型和粗细。

ggplot(mpg, aes(class, hwy, fill = class)) +
  geom_violin(quantiles = c(0.1, 0.9), quantile.linetype = "solid") +
  guides(fill = "none")

# 标签图层样式升级，geom_label()新增 linetype和 linewidth美学属性（支持数据映射），
# 其中 linewidth替代原有 label.size参数；
# 同时新增 border.colour和 text.colour参数，
# 可分别独立设置边框与文字颜色（优先级高于全局 colour设置）。

ggplot(mtcars) +
  aes(
    wt,
    mpg,
    label = rownames(mtcars),
    colour = factor(cyl),
    linetype = factor(vs),
    linewidth = factor(am)
  ) +
  geom_label(text.colour = "black") +
  scale_linewidth_manual(values = c(0.3, 0.6))

# ggplot2的geom_area()和geom_ribbon()现在支持在同一个图形分组内使用渐变色填充了。
# 这意味着你可以在一个面积区域或带状区域内呈现颜色渐变效果。
# 要使用这个功能，需要R版本在4.1.0以上，并且使用兼容的图形设备。
ggplot(economics, aes(date, unemploy)) +
  geom_area(aes(fill = uempmed))
